home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / umich / utils / rcs5ap1m.lzh / MAKEFILE.ORI < prev    next >
Text File  |  1991-02-19  |  9KB  |  275 lines

  1. # $Id: makefile.ori 5.8 1990/12/13 06:54:06 eggert Exp $
  2. # Copyright (C) 1982, 1988, 1989 Walter Tichy
  3. #   Copyright 1990 by Paul Eggert
  4. #   Distributed under license by the Free Software Foundation, Inc.
  5. #
  6. # This file is part of RCS.
  7. #
  8. # RCS is free software; you can redistribute it and/or modify
  9. # it under the terms of the GNU General Public License as published by
  10. # the Free Software Foundation; either version 1, or (at your option)
  11. # any later version.
  12. #
  13. # RCS is distributed in the hope that it will be useful,
  14. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16. # GNU General Public License for more details.
  17. #
  18. # You should have received a copy of the GNU General Public License
  19. # along with RCS; see the file COPYING.  If not, write to
  20. # the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  21. #
  22. # Report problems and direct all questions to:
  23. #
  24. #    rcs-bugs@cs.purdue.edu
  25. #
  26. #               INSTRUCTIONS
  27. #               ============
  28.  
  29.  
  30. #    Figure out where to put the RCS commands; define RCSDIR accordingly.
  31.  
  32. RCSDIR = /usr/local/bin
  33.  
  34.  
  35. #    Define INSTALL_SETID_FLAGS as needed to install RCS setgid or setuid.
  36. #    This makes sense only when setegid() and seteuid() work
  37. #    Setgid is better than setuid because it mixes with nonstrict locking.
  38. #INSTALL_SETID_FLAGS = ${INSTALL_NORMAL_FLAGS}
  39. #INSTALL_SETID_FLAGS = -g rcs -o root -m 2555
  40.  INSTALL_SETID_FLAGS = ${INSTALL_NORMAL_FLAGS}
  41.  
  42.  
  43. #    Define RCSPREFIX to be empty if you want RCS to search the PATH for
  44. #    subsidiary RCS commands like co.  This lets you move RCS commands
  45. #    after building them, and permits multiple instances of setgid RCS
  46. #    commands on the same host for different groups.
  47. #
  48. #    Define RCSPREFIX to a path followed by / if you want RCS to look in
  49. #    just one place.  This makes execution faster.  Also, if your host's
  50. #    execvp() system call does not understand the BSD #!/bin/sh convention
  51. #    for starting shell files, you must use a nonempty RCSPREFIX, because
  52. #    in this case rcsmerge invokes `/bin/sh ${RCSPREFIX}merge'.
  53.  
  54. #RCSPREFIX =
  55. #RCSPREFIX = ${RCSDIR}/
  56.  RCSPREFIX = ${RCSDIR}/
  57.  
  58. #    Define DIFF and DIFF3 to be the name of your diff and diff3 programs.
  59. #    DIFF must be an absolute path name if setgid or setuid is used.
  60. #    Define DIFF_FLAGS to be diff's options for RCS format output.
  61. #    If available, use the -a option for comparing arbitrary files.
  62. #    Define DIFF_L to be 1 if your diff understands GNU diff's -L option.
  63. #    Set DIFF3_TYPE=lib for traditional diff, =bin otherwise.
  64. #    If DIFF3_type=bin, make sure your diff3 understands -a, -L, and and -m.
  65. #    If DIFF3_type=lib, avoid the diff3 program visible to users, and
  66. #    use the one in /usr/lib instead; it may be called /usr/lib/diff3prog.
  67.  
  68. # Traditional diff
  69. #DIFF = /bin/diff
  70. #DIFF_FLAGS = -n
  71. #DIFF_L = 0
  72. #DIFF3 = /usr/lib/diff3
  73. #DIFF3_TYPE = lib
  74.  
  75. # GNU diff -- must be version 1.15 or later
  76. #DIFFPREFIX = ${RCSDIR}/
  77. #DIFF = ${DIFFPREFIX}diff
  78. #DIFF_FLAGS = -an
  79. #DIFF_L = 1
  80. #DIFF3 = ${DIFF}3
  81. #DIFF3_TYPE = bin
  82.  
  83.  DIFF = /bin/diff
  84.  DIFF_FLAGS = -n
  85.  DIFF_L = 0
  86.  DIFF3 = /usr/lib/diff3
  87.  DIFF3_TYPE = lib
  88.  
  89.  
  90. #    Set SENDMAIL to be a comma-separated list of strings that are a command
  91. #    to send mail.  The first string should be an absolute pathname.
  92. #    The name of the addressee will be appended as a separate argument,
  93. #    and the standard input will be the message (first line "Subject: xxxx",
  94. #    second line empty).
  95.  
  96. #SENDMAIL = "/bin/mail"
  97. #SENDMAIL = "/etc/delivermail", "-w"
  98. #SENDMAIL = "/usr/lib/sendmail"
  99.  SENDMAIL = "/bin/mail"
  100.  
  101.  
  102. #    Decide what loader libraries you need.
  103. #    Some older hosts need -lBSD, -ljobs, or -lPW.
  104.  
  105. LDLIBS =
  106.  
  107.  
  108. #    Decide what C compiler flags you need.
  109.  
  110. # Optimize.  Put in options that work well for your compiler.
  111. # Options to try with GCC include -fdelayed-branch, -finline-functions,
  112. # -fomit-frame-pointer, and -fstrength-reduce.
  113. CC_O = -O
  114.  
  115. # Make all initialized data read-only (not just string literals).
  116. # This option can improve performance by making initialized data shared.
  117. # It's not worth worrying about if your compiler supports the `const' keyword.
  118. # 4.3BSD-based compilers
  119. #CC_R = -R
  120. # most other compilers
  121. #CC_R =
  122.  CC_R =
  123.  
  124. # Add this for SunOS 4.1 + GCC 1.37.1.
  125. #COMPILE.c = ${CC} ${CFLAGS} ${CPPFLAGS} -c
  126.  
  127.  
  128. # for GCC
  129. #CC = gcc
  130. #CC_W = -Wall -Wcast-qual -Wpointer-arith -Wshadow -Wwrite-strings
  131. #CFLAGS = ${CC_O} ${CC_R} ${CC_W}
  132.  
  133. # for traditional C compilers
  134. #CC = cc
  135. #CFLAGS = ${CC_O} ${CC_R}
  136.  
  137.  CC = cc
  138.  CFLAGS = ${CC_O} ${CC_R}
  139.  
  140.  
  141. LINT = lint
  142.  
  143. # For traditional and BSD lint, use
  144. #LINTFLAGS = -abchx
  145. # For USG lint, use
  146. #LINTFLAGS =
  147.  LINTFLAGS = -abchx
  148.  
  149.  
  150. #    If you have version 2 RCS files around, define COMPAT2 to be 1.
  151. #    (Version 2 became obsolete in 1982.)  This assures that version 2
  152. #    RCS files can still be read.  After all version 2 RCS files have
  153. #    been updated with later versions of ci or rcs, you can remake RCS with
  154. #    COMPAT2=0.
  155. COMPAT2 = 0
  156. #    When you have RCS installed, rename old version 2 RCS files as follows
  157. #    (if you have any).  If the working file was "f.c" and the RCS file
  158. #    "f.c.v", rename the RCS file to "f.c,v". If the working file was "f.c"
  159. #    and the RCS file "f.v", rename the RCS file "f.c,v". Thus, suffixes
  160. #    are no longer dropped and RCS files end in ",v" rather than ".v".
  161.  
  162.  
  163. #    Now you are ready.  Try to make "conf.h".
  164. #    Check the resulting conf.h for plausibility.
  165. #    If it's wrong, there is a bug in conf.sh; please report it.
  166. #    You can patch conf.h if you're in a hurry, but it's better to fix it;
  167. #    look at a.h and conf.error for ideas.
  168. #    If all else fails, copy conf.heg to conf.h and edit it by hand.
  169.  
  170. #    Make "all".
  171. #    If all went well, make "install".
  172. #    If installation succeeds, make "installtest";
  173. #    if this fails, make "installdebug" for detailed info.
  174.  
  175. #    If you want to maintain RCS with itself, be sure you preserve the
  176. #    original revision numbers, dates, etc. by checking the
  177. #    files in with the -k option.
  178.  
  179. # Avoid brain damage in some versions of 'make'.
  180. SHELL = /bin/sh
  181.  
  182. # binary commands
  183. BCOMMANDS   =   ci ident rcs rcsdiff rcsmerge rlog co
  184.  
  185. # all commands
  186. RCSCOMMANDS = merge ${BCOMMANDS}
  187.  
  188. all :: ${RCSCOMMANDS}
  189.  
  190. INSTALL = install -c
  191. INSTALL_NORMAL_FLAGS = -g staff -m 775
  192.  
  193. install :: all
  194.     ${INSTALL} ${INSTALL_SETID_FLAGS} ci ${RCSDIR}
  195.     ${INSTALL} ${INSTALL_SETID_FLAGS} co ${RCSDIR}
  196.     ${INSTALL} ${INSTALL_SETID_FLAGS} rcsdiff ${RCSDIR}
  197.     ${INSTALL} ${INSTALL_SETID_FLAGS} rcsmerge ${RCSDIR}
  198.     ${INSTALL} ${INSTALL_SETID_FLAGS} rlog ${RCSDIR}
  199.     ${INSTALL} ${INSTALL_NORMAL_FLAGS} ident ${RCSDIR}
  200.     ${INSTALL} ${INSTALL_NORMAL_FLAGS} rcs ${RCSDIR}
  201.     ${INSTALL} ${INSTALL_NORMAL_FLAGS} merge ${RCSDIR}
  202.  
  203. installtest ::
  204.     sh rcstest
  205.  
  206. installdebug ::
  207.     sh rcstest -v
  208.  
  209. clean ::
  210.     rm -f a.* *.o conf.h conf.error ${RCSCOMMANDS}
  211.  
  212. conf.h : conf.sh # Makefile
  213.     C='${CC} ${CFLAGS}' \
  214.     COMPAT2='${COMPAT2}' \
  215.     DIFF='${DIFF}' \
  216.     DIFF_L='${DIFF_L}' \
  217.     DIFF_FLAGS='${DIFF_FLAGS}' \
  218.     RCSPREFIX='${RCSPREFIX}' \
  219.     SENDMAIL='${SENDMAIL}' \
  220.     L='${LDLIBS}' \
  221.     sh -x conf.sh 2>conf.error
  222.     mv a.h $@
  223.     rm -f a.*
  224.  
  225. CIFILES = ci.o rcslex.o rcssyn.o rcsgen.o rcsedit.o rcskeys.o rcsmap.o \
  226.     rcsrev.o rcsutil.o rcsfnms.o partime.o maketime.o rcskeep.o rcsfcmp.o
  227. ci : ${CIFILES}
  228.     ${CC} ${CFLAGS} ${CIFILES} ${LDLIBS} -o $@
  229.  
  230. COFILES = co.o rcslex.o rcssyn.o rcsgen.o rcsedit.o rcskeys.o rcsmap.o \
  231.     rcsrev.o rcsutil.o rcsfnms.o partime.o maketime.o
  232. co : ${COFILES}
  233.     ${CC} ${CFLAGS} ${COFILES} ${LDLIBS} -o $@
  234.  
  235. ident : ident.o rcsmap.o
  236.     ${CC} ${CFLAGS} ident.o rcsmap.o ${LDLIBS} -o $@
  237.  
  238. merge : merge.sh
  239.     DIFF=${DIFF} DIFF3=${DIFF3} DIFF3_TYPE=${DIFF3_TYPE} sh $@.sh >$@.o
  240.     chmod +x $@.o
  241.     mv $@.o $@
  242.  
  243. RLOG = rlog.o rcslex.o rcsmap.o rcssyn.o rcsrev.o rcsutil.o partime.o \
  244.     maketime.o rcsfnms.o
  245. rlog : ${RLOG}
  246.     ${CC} ${CFLAGS} ${RLOG} ${LDLIBS} -o $@
  247.  
  248. RCS = rcs.o rcslex.o rcssyn.o rcsrev.o rcsutil.o rcsgen.o rcsedit.o rcskeys.o \
  249.     rcsmap.o rcsfnms.o
  250. rcs : ${RCS}
  251.     ${CC} ${CFLAGS} ${RCS} ${LDLIBS} -o $@
  252.  
  253. RCSDIFF = rcsdiff.o rcsutil.o rcsfnms.o rcsmap.o rcsrev.o rcssyn.o rcsle